/**
 * 
 */
package t4j.generics;

import java.lang.reflect.Array;


public class GenericArrayWithTypeToken<T> {

	private T[] array;
	
	public GenericArrayWithTypeToken(Class<T> type,int sz){
		array = (T[]) Array.newInstance(type, sz);//使用CLASS创建数组后转型成泛型T类型
	}
	
	public void put(int index,T item){
		array[index] = item;
	}
	
	public T get(int index){
		return array[index];
	}
	
	public T[] rep(){ return array;}
	
	public static void main(String[] args) {
		GenericArrayWithTypeToken<Integer> gai = new GenericArrayWithTypeToken<Integer>(Integer.class, 10);
		
		Integer[] ia = gai.rep();
	}
}
